use ActivosFijos;
go
CREATE PROCEDURE spABM_puntos
    @Ipuntos_id int = Null   OUTPUT,
    @Iubicacion_punto decimal(2,2) = Null,
    @sdescripcion varchar (200) = Null,
    @sestado char (1) = Null,
    @Icodigo int = Null,
    @Ilocaciones_id int = Null,
    @iEvento int = null

AS
if @iEvento = 1 --Insertar
    begin
        insert into tbl_puntos(Iubicacion_punto, sdescripcion, sestado, Icodigo, Ilocaciones_id)
        VALUES(@Iubicacion_punto, @sdescripcion, @sestado, @Icodigo, @Ilocaciones_id);
        SET @Ipuntos_id = @@IDENTITY;
    End
Else
    if @iEvento = 2 --Modificar
        update tbl_puntos set
            Iubicacion_punto = @Iubicacion_punto,
            sdescripcion = @sdescripcion,
            sestado = @sestado,
            Icodigo = @Icodigo,
            Ilocaciones_id = @Ilocaciones_id
        Where Ipuntos_id = @Ipuntos_id;
    Else
        if @iEvento = 3 -- Eliminar
            delete from tbl_puntos
            Where Ipuntos_id = @Ipuntos_id;
        Else
            if @iEvento = 4 -- Seleccionar todo
                select Ipuntos_id, Iubicacion_punto, sdescripcion, sestado, Icodigo, Ilocaciones_id
                from tbl_puntos;
            Else
                if @iEvento = 5 -- Seleccionar uno
                    select Ipuntos_id, Iubicacion_punto, sdescripcion, sestado, Icodigo, Ilocaciones_id
                    from tbl_puntos
                    Where Ipuntos_id = @Ipuntos_id;
                Else
                    if @iEvento = 6 -- Buscar
                        select Ipuntos_id, Iubicacion_punto, sdescripcion, sestado, Icodigo, Ilocaciones_id
                        from tbl_puntos
                        where sestado like '%' + @sestado + '%';